package com.slm.report.di;

import android.app.Application;

import com.slm.mylibrary.base.BaseApplication;
import com.slm.mylibrary.di.ApplicationModule;

import javax.inject.Singleton;

import dagger.BindsInstance;
import dagger.Component;
import dagger.android.AndroidInjector;
import dagger.android.support.AndroidSupportInjectionModule;

/**
 * @ProjectName: My Application
 * @Package: com.slm.report.di
 * @ClassName: AppModuleComponent
 * @Description: java类作用描述
 * @Author: 王丹丹
 * @CreateDate: 2020/5/29 10:18
 * @UpdateUser: 更新者
 * @UpdateDate: 2020/5/29 10:18
 * @UpdateRemark: 更新说明
 * @Version: 1.0
 */
@Singleton
@Component(modules={AndroidSupportInjectionModule.class, ApplicationModule.class,AppBindingModule.class})
public interface AppModuleComponent extends AndroidInjector<BaseApplication> {

    @Component.Builder
    interface Builder {
        @BindsInstance
        Builder application(Application application);

        AppModuleComponent build();
    }
}
